WOLF core
WOLF: A Modular Estimation Framework for Robotics
XXXXXXXXXXXXXXXXXXXXXXXXvoid(0)" frameborder="0" name="MSearchResults" id="MSearchResults">
wolf::FactorRelativePose2dWithExtrinsics Class Reference

#include <core/factor/factor_relative_pose_2d_with_extrinsics.h>

Inheritance diagram for wolf::FactorRelativePose2dWithExtrinsics:
[legend]

Public Member Functions

 FactorRelativePose2dWithExtrinsics (const Eigen::VectorXd &_measurement, const Eigen::MatrixXd &_measurement_sqrt_information_upper, const NodeStateBlocksPtr &_node_reference, const NodeStateBlocksPtr &_node_target, const SensorBasePtr &_sensor, const ProcessorBasePtr &_processor_ptr, bool _apply_loss_function, const FactorTopology &_top, FactorStatus _status=FAC_ACTIVE)
 Class constructor. More...
 
 ~FactorRelativePose2dWithExtrinsics () override=default
 
template<typename T >
bool operator() (const T *const _p_ref, const T *const _o_ref, const T *const _p_target, const T *const _o_target, const T *const _p_sensor, const T *const _o_sensor, T *_residuals) const
 
- Public Member Functions inherited from wolf::FactorAutodiff< FactorRelativePose2dWithExtrinsics, 3, 2, 1, 2, 1, 2, 1 >
 FactorAutodiff (const std::string &_type, const FactorTopology &_top, const Eigen::VectorXd &_measurement, const Eigen::MatrixXd &_measurement_sqrt_information_upper, const NodeStateBlocksPtrList &_node_state_block_list, const ProcessorBasePtr &_processor_ptr, const std::vector< StateBlockPtr > &_state_ptrs, bool _apply_loss_function, FactorStatus _status=FAC_ACTIVE)
 
 ~FactorAutodiff () override=default
 
bool evaluate (double const *const *params, double *residuals, double **jacobians) const override
 Returns the residual and jacobians given the state values. More...
 
bool evaluate (const std::vector< const double * > &_states_ptr, Eigen::VectorXd &residual_, std::vector< Eigen::MatrixXd > &jacobians_) const override
 Returns a vector of Jacobian matrix corresponding to each state block evaluated in the point provided in _states_ptr. More...
 
void updateJetsRealPart (const std::vector< double const * > &params) const
 Updates all jets real part with values of params. More...
 
unsigned int getSize () const override
 Returns the residual size. More...
 
- Public Member Functions inherited from wolf::FactorBase
 FactorBase (const std::string &_type, const FactorTopology &_top, const JacobianMethod &_jac_method, const Eigen::VectorXd &_measurement, const Eigen::MatrixXd &_measurement_sqrt_information_upper, const NodeStateBlocksPtrList &_node_state_block_list, const ProcessorBasePtr &_processor_ptr, const std::vector< StateBlockPtr > &_state_ptrs, bool _apply_loss_function, FactorStatus _status=FAC_ACTIVE)
 constructor from measurement and noise square root information upper matrix (cholesky) More...
 
 ~FactorBase () override=default
 
virtual void remove (bool viral_remove_parent_without_children=false)
 
bool hasChildren () const override
 
unsigned int id () const
 
virtual FactorTopology getTopology () const final
 get the main topological characteristic More...
 
virtual void getTopology (FactorTopology _top) final
 set the main topological characteristic More...
 
std::string getTopologyString () const
 get the main topological characteristic as string More...
 
virtual bool evaluate (double const *const *_parameters, double *_residuals, double **_jacobians) const =0
 Evaluate the factor given the input parameters and returning the residuals and jacobians. More...
 
virtual bool evaluate (const std::vector< const double * > &_states_ptr, Eigen::VectorXd &_residual, std::vector< Eigen::MatrixXd > &_jacobians) const =0
 
virtual Eigen::VectorXd residual () const
 Evaluate the factor residual with the current state block values. More...
 
virtual double cost () const
 Evaluate the cost of the factor with the current state block values. More...
 
virtual JacobianMethod getJacobianMethod () const final
 Returns the jacobians computation method. More...
 
virtual std::vector< StateBlockConstPtr > getStateBlockPtrVector () const
 Returns a vector of pointers to the states in which this factor depends. More...
 
virtual std::vector< StateBlockPtr > getStateBlockPtrVector ()
 
virtual std::vector< unsigned int > getStateSizes () const
 Returns a vector of the states sizes. More...
 
virtual const Eigen::VectorXd & getMeasurement () const
 Returns a reference to the measurement. More...
 
virtual const Eigen::MatrixXd & getMeasurementSquareRootInformationUpper () const
 Returns a reference to the measurement square root information. More...
 
FeatureBaseConstPtr getFeature () const
 Returns a pointer to the feature constrained from. More...
 
FeatureBasePtr getFeature ()
 
CaptureBaseConstPtr getCapture () const
 Returns a pointer to its capture. More...
 
CaptureBasePtr getCapture ()
 
FrameBaseConstPtr getFrame () const
 Returns a pointer to its frame. More...
 
FrameBasePtr getFrame ()
 
ProcessorBaseConstPtr getProcessor () const
 getProcessor More...
 
ProcessorBasePtr getProcessor ()
 
virtual unsigned int getSize () const =0
 Returns the factor residual size. More...
 
FactorStatus getStatus () const
 Gets the status. More...
 
void setStatus (FactorStatus _status)
 Sets the status. More...
 
bool getApplyLossFunction () const
 Gets the apply loss function flag. More...
 
NodeStateBlocksWPtrList getNodesFactored ()
 
FrameBaseWPtrList getFramesFactored ()
 
CaptureBaseWPtrList getCapturesFactored ()
 
LandmarkBaseWPtrList getLandmarksFactored ()
 
SensorBaseWPtrList getSensorsFactored ()
 
NodeStateBlocksConstWPtrList getNodesFactored () const
 
FrameBaseConstWPtrList getFramesFactored () const
 
CaptureBaseConstWPtrList getCapturesFactored () const
 
LandmarkBaseConstWPtrList getLandmarksFactored () const
 
SensorBaseConstWPtrList getSensorsFactored () const
 
bool hasNode (const NodeStateBlocksConstPtr &_nsb) const
 
bool hasFrame (const FrameBaseConstPtr &_frm) const
 
bool hasCapture (const CaptureBaseConstPtr &_cap) const
 
bool hasLandmark (const LandmarkBaseConstPtr &_lmk) const
 
bool hasSensor (const SensorBaseConstPtr &_sen) const
 
void link (FeatureBasePtr ftr)
 
virtual void printHeader (int _depth, bool _factored_by, bool _metric, bool _state_blocks, std::ostream &_stream, std::string _tabs="") const
 
void print (int _depth, bool _factored_by, bool _metric, bool _state_blocks, std::ostream &_stream=std::cout, std::string _tabs="") const
 
virtual CheckLog localCheck (bool _verbose, std::ostream &_stream, std::string _tabs="") const
 
bool check (CheckLog &_log, bool _verbose, std::ostream &_stream, std::string _tabs="") const
 
- Public Member Functions inherited from wolf::NodeBase
 NodeBase (const std::string &_category, const std::string &_type="Undefined", const std::string &_name="")
 
virtual ~NodeBase ()=default
 
unsigned int nodeId () const
 
std::string getCategory () const
 
std::string getType () const
 
std::string getName () const
 
bool isRemoving () const
 
virtual bool hasChildren () const =0
 
void setType (const std::string &_type)
 
void setName (const std::string &_name)
 
ProblemConstPtr getProblem () const
 
ProblemPtr getProblem ()
 

Additional Inherited Members

- Public Types inherited from wolf::FactorAutodiff< FactorRelativePose2dWithExtrinsics, 3, 2, 1, 2, 1, 2, 1 >
typedef autodiff::Jet< double, B0+B1+B2+B3+B4+B5+0+0+0+0+0+0+0+0+0 > WolfJet
 
- Static Public Member Functions inherited from wolf::FactorBase
template<typename classType , typename... T>
static std::shared_ptr< classType > emplace (FeatureBasePtr _oth_ptr, T &&... all)
 
- Static Public Attributes inherited from wolf::FactorAutodiff< FactorRelativePose2dWithExtrinsics, 3, 2, 1, 2, 1, 2, 1 >
static const unsigned int n_blocks
 
- Protected Member Functions inherited from wolf::FactorBase
void setProblem (ProblemPtr) override final
 
virtual void setProblem (ProblemPtr _prob_ptr)
 
- Protected Attributes inherited from wolf::FactorAutodiff< FactorRelativePose2dWithExtrinsics, 3, 2, 1, 2, 1, 2, 1 >
std::array< WolfJet, RES > residuals_jets_
 
std::array< WolfJet, B0 > jets_0_
 
std::array< WolfJet, B1 > jets_1_
 
std::array< WolfJet, B2 > jets_2_
 
std::array< WolfJet, B3 > jets_3_
 
std::array< WolfJet, B4 > jets_4_
 
std::array< WolfJet, B5 > jets_5_
 
std::array< WolfJet, 0 > jets_6_
 
std::array< WolfJet, 0 > jets_7_
 
std::array< WolfJet, 0 > jets_8_
 
std::array< WolfJet, 0 > jets_9_
 
std::array< WolfJet, 0 > jets_10_
 
std::array< WolfJet, 0 > jets_11_
 
std::array< WolfJet, 0 > jets_12_
 
std::array< WolfJet, 0 > jets_13_
 
std::array< WolfJet, 0 > jets_14_
 
- Protected Attributes inherited from wolf::FactorBase
unsigned int factor_id_
 
FactorTopology topology_
 topology of factor More...
 
JacobianMethod jacobian_method_
 jacobian method More...
 
FactorStatus status_
 status of factor More...
 
bool apply_loss_function_
 flag for applying loss function to this factor More...
 
Eigen::VectorXd measurement_
 the measurement vector More...
 
Eigen::MatrixXd measurement_sqrt_information_upper_
 the squared root information matrix More...
 
std::vector< unsigned int > state_block_sizes_
 vector containing sizes of the state blocks involved More...
 
std::vector< StateBlockPtr > state_block_vector_
 vector containing the state blocks involved More...
 
- Protected Attributes inherited from wolf::NodeBase
ProblemWPtr problem_ptr_
 
unsigned int node_id_
 Node id. It is unique over the whole Wolf Tree. More...
 
std::string node_category_
 Text label identifying the category of node ("SENSOR", "FEATURE", etc) More...
 
std::string node_type_
 Text label identifying the type or subcategory of node ("Pin Hole", "Point 2d", etc) More...
 
std::string node_name_
 
bool is_removing_
 A flag for safely removing nodes from the Wolf tree. See remove(). More...
 
- Static Protected Attributes inherited from wolf::FactorAutodiff< FactorRelativePose2dWithExtrinsics, 3, 2, 1, 2, 1, 2, 1 >
static const std::vector< unsigned int > jacobian_locations_
 

Constructor & Destructor Documentation

◆ FactorRelativePose2dWithExtrinsics()

wolf::FactorRelativePose2dWithExtrinsics::FactorRelativePose2dWithExtrinsics ( const Eigen::VectorXd &  _measurement,
const Eigen::MatrixXd &  _measurement_sqrt_information_upper,
const NodeStateBlocksPtr &  _node_reference,
const NodeStateBlocksPtr &  _node_target,
const SensorBasePtr &  _sensor,
const ProcessorBasePtr &  _processor_ptr,
bool  _apply_loss_function,
const FactorTopology &  _top,
FactorStatus  _status = FAC_ACTIVE 
)
inline

Class constructor.

◆ ~FactorRelativePose2dWithExtrinsics()

wolf::FactorRelativePose2dWithExtrinsics::~FactorRelativePose2dWithExtrinsics ( )
overridedefault

Member Function Documentation

◆ operator()()

template<typename T >
bool wolf::FactorRelativePose2dWithExtrinsics::operator() ( const T *const  _p_ref,
const T *const  _o_ref,
const T *const  _p_target,
const T *const  _o_target,
const T *const  _p_sensor,
const T *const  _o_sensor,
T *  _residuals 
) const
inline

The documentation for this class was generated from the following file: